def-orchestra name groups instruments &rest groups instruments
This allows to define a named orchesta consisting of groups, which may consist of smaller groups or instruments. When you define classes for all-instruments, your message is received by piano and synth. Since piano is further defined to consist of left-hand and right-hand, those instruments will receive the values. With combination of def-grammar, you can very easily define very powerful structures and instrumentations.
(def-orchestra 'orchestra
all-instruments (piano synth)
piano (left-hand right-hand)
)
(def-grammar 'song
all-sections (intro middle ending)
intro (sect-a sect-b)
middle (am bm cm bm)
ending (ae be)
)
(def-class symbol all-instruments
all-sections '((a a a) (b b b))
middle '(c c c)
)
Here are some examples that show how the root level instruments in root-level sections have received your message. Powerful, isn't it?